#-*- coding: utf-8 -*-
'''
@author: Sandro Sousa
@date: 28 de Outubro de 2013
@obs:
bd
'''
from sqlalchemy import *
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker, mapper

Base = declarative_base()



class Students_data(Base):
    '''
    cria a base de dados
    '''
    __tablename__ = 'students_data'

    line_id = Column(Integer, primary_key=True)
    codigoInstituicao = Column(Integer)
    codigoCurso = Column(Integer)
    nomeInstituicao = Column(String)
    nomeCurso = Column(String)
    grau = Column(String)
    vagasIniciais = Column(Integer)
    colocados = Column(Integer)
    notaCandidatura = Column(Float)
    vagasSobrantes = Column(Integer)

    def __init__(self, line_id,
        codigoInstituicao,
        codigoCurso,
        nomeInstituicao,
        nomeCurso,
        grau,
        vagasIniciais,
        colocados,
        notaCandidatura,
        vagasSobrantes):

        self.line_id = line_id        
        self.codigoInstituicao = codigoInstituicao
        self.codigoCurso = codigoCurso
        self.nomeInstituicao = nomeInstituicao
        self.nomeCurso = nomeCurso
        self.grau = grau
        self.vagasIniciais = vagasIniciais
        self.colocados = colocados
        self.notaCandidatura = notaCandidatura
        self.vagasSobrantes = vagasSobrantes

    def __repr__(self):
        return "<('%d','%d','%d','%s',\
            '%s','%s','%d','%d','%f','%d'\
            )>" % (self.line_id,
            self.codigoInstituicao,
            self.codigoCurso,
            self.nomeInstituicao,
            self.nomeCurso,
            self.grau,
            self.vagasIniciais,
            self.colocados,
            self.notaCandidatura,
            self.vagasSobrantes)

def newengine(path):
	return create_engine(path, echo=False)

def newsessionmaker(binded_engine):
	return sessionmaker(bind=binded_engine)

